/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Modelo;
/**
 *
 * @author ivyduk
 */
public class Producto {
   
    public Producto(int a){
        
    Tipo=a;    
    costmante=0;
    costOrden=0;
    costCompra=0;
    t_Distribucion=0;
    parametroBernoulli=0;
    parametroPoisson=0;
    parametroNormal_mu=0;
    parametroNormal_sigcua=0;
    Q=0;
    tiempo_Alistamiento_mu=0;
    tiempo_Alistamiento_sigcua=0;
    Qi=0;
    ri=0;  
    Sei=0;
    }
    
   private int Tipo; 


   //-----------------------COSTOS -----------------
   private double costmante;
   private double costOrden;
   private double costCompra;
   
   

   
     
   //----------Demanda diaria esperada--------------

    private int t_Distribucion;
    private int parametroBernoulli;
    private int parametroPoisson;

    private int parametroNormal_mu;
    private int parametroNormal_sigcua;
    
    
   //-------Cantidad pedida de articulo------------
    private double Q;
    
    
   //------Reposicion "Alistamiento" ---------------
   private double tiempo_Alistamiento_mu;
   private double tiempo_Alistamiento_sigcua;
   
   
   
   //-------------------Salidas----------------------
   private int Qi;  //Tamaño del lote a pedir
   private int ri;   //Punto de pedido
   private int Sei;  //Inventario de seguridad
   
   
   

    public double getCostmante() {
        return costmante;
    }

    public void setCostmante(double costmante) {
        this.costmante = costmante;
    }

    public double getCostOrden() {
        return costOrden;
    }

    public void setCostOrden(double costOrden) {
        this.costOrden = costOrden;
    }

    public double getCostCompra() {
        return costCompra;
    }

    public void setCostCompra(double costCompra) {
        this.costCompra = costCompra;
    }

    public double getParametroBernoulli() {
        return parametroBernoulli;
    }

    public void setParametroBernoulli(int parametroBernoulli) {
        this.parametroBernoulli = parametroBernoulli;
    }

    public double getParametroPoisson() {
        return parametroPoisson;
    }

    public void setParametroPoisson(int parametroPoisson) {
        this.parametroPoisson = parametroPoisson;
    }
         public int getTipo() {
        return Tipo;
    }

    public void setTipo(int Tipo) {
        this.Tipo = Tipo;
    }
    public double getParametroNormal_mu() {
        return parametroNormal_mu;
    }

    public void setParametroNormal_mu(int parametroNormal_mu) {
        this.parametroNormal_mu = parametroNormal_mu;
    }

    public double getParametroNormal_sigcua() {
        return parametroNormal_sigcua;
    }

    public void setParametroNormal_sigcua(int parametroNormal_sigcua) {
        this.parametroNormal_sigcua = parametroNormal_sigcua;
    }

    public int getQi() {
        return Qi;
    }

    public void setQi(int Qi) {
        this.Qi = Qi;
    }

    public int getRi() {
        return ri;
    }

    public void setRi(int ri) {
        this.ri = ri;
    }

    public int getSei() {
        return Sei;
    }

    public void setSei(int Sei) {
        this.Sei = Sei;
    }
   
   
   
   
   //-----------------MÉTODOS PRODUCTO ----------------
    
   
   //Demando promedio = esperanza matemática --> PASO 1
    
        public int Esperanza(int t_Distribucion){
            
            int E = 0;
            
            //Distribucion Poisson 
            if (t_Distribucion == 0){
                E = parametroPoisson;
            }
            
            //Distribucion Bernulli 
            if (t_Distribucion == 1){
                E = parametroBernoulli;
            }
                       
        
            return E;
        }
   
        
   //DEMANDA MEDIA EN TIEMPO DE REPOSICIÓN  --> PASO 2
        
        public double TiempoReposicion(){
            double TR = 0;
            
            //Di --> Demanda Esperada para artículo i "Espereanza funcion de demanda" 
            //Qi --> Cantidad de pedido para cada artículo
            
                    
            
            
            TR = Esperanza(t_Distribucion) * Esperanza(t_Distribucion);
            
            
            
            
            
            return TR;
            
        }
        
        public int CalcularDemanda(){
            
            int demanda=0;
            
            if(Tipo==1){
                demanda=parametroPoisson;
            }
            else if(Tipo==2){
                demanda=parametroBernoulli;
            }
           return demanda;
        }
      
   
   
   
   
   
   
}
